package user

import (
	"beegoProject15/models/auth"
	"beegoProject15/models/my_center"
	"github.com/astaxie/beego"
	"github.com/astaxie/beego/orm"
	"time"
)

type SalarySlipController struct {
	beego.Controller
}

func (c *SalarySlipController) Get() {

	// 9 查询日期获取
	month := c.GetString("month")
	if month == "" { // 如果日期查询项输入为空，则显示当月数据
		// 5 当前月份格式化字符串获取需要匹配数据库
		month = time.Now().Format("2006-01")
	}

	// 1 先获取当前登录的用户信息
	id := c.GetSession("id")

	// 2 数据库实例
	o := orm.NewOrm()

	// 3 用户数据容器
	user := auth.User{}
	// 4 数据库查询出用户
	o.QueryTable("sys_user").Filter("id", id).One(&user)

	/*// 5 当前月份格式化字符串获取需要匹配数据库
	month = time.Now().Format("2006-01")*/
	// 6 通过user获取工号
	cardId := user.CardId
	// 7 工资数据容器
	salarySlip := my_center.SalarySlip{}

	// 8 通过上述工号和月份去sys_salary_slip这个表内查询数据
	o.QueryTable("sys_salary_slip").Filter("card_id", cardId).Filter("pay_date", month).One(&salarySlip)

	c.Data["salary_slip"] = salarySlip
	c.TplName = "user/salary-slip-list.html"
}

func (c *SalarySlipController) Detail() {

	// 获取当前登录的sys_salary-slip 表内的id
	id, _ := c.GetInt("id")

	// 数据库查询
	o := orm.NewOrm()

	// 通过Id查询详细数据
	salarySlip := my_center.SalarySlip{}
	o.QueryTable("sys_salary_slip").Filter("id", id).One(&salarySlip)

	c.Data["salary_slip"] = salarySlip
	// 用户点击查看到表单详情页面，无提交按钮
	c.TplName = "user/salary-slip-detail.html"
}
